#include<stdio.h>
#include<bits/stdc++.h>
int getstoke(char *str,char **res,int *num);
/**
 * @function:拆分字符串，并获得里面的数据，最后获得数据个数，
 * @param str ：输入的字符串
 * @param res ：输出的拆分后的字符串
 * @param num ：拆分后数据的个数
 * @return ：返回状态。
 */
 void test();
int getstoke(char *str,char **res,int *num)
{
    if(str==NULL || res==NULL||num==NULL)
    {
        return -1;
    }
    char *pach=strtok(str,"\"{,}\"");
    int i=0;
    while(pach!=NULL)
    {
        res[i++]=pach;
        //printf("%s\n",pach);
        pach=strtok(NULL,"\"{,}\"");
    }
    *num=i;
    for(int j=0;j<i;++j)
    {
        printf("%s\n",res[j]);
    }
    return 0;
}
/**
 * 1."{\"abcde\",\"ddddd\",\"eeeee\",\"yyyyy\",}";
 * 2."{\"abcde\",\"ddddd\",\"eeeee\",\"yyyyy\",\"   \",}"
 * 3."{\"abcde\",\"ddddd\",\"eeeee\",\"\n\n \t  \t yyy\",\"   \",}"
 */
void test()
{
    char p[]="{\"abcde\",\"ddddd\",\"eeeee\",\"\n\n \t  \t yyy\",\"   \",}";
    char *res[50];
    int i=0;
    int e=getstoke(p,res,&i);
    printf("%s\n%d",res[1],i);
}
int main()
{
    test();
    return 0;
}